﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000D83 RID: 3459
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class PunkLordMonsterInfoScNotify : IMessage<PunkLordMonsterInfoScNotify>, IMessage, IEquatable<PunkLordMonsterInfoScNotify>, IDeepCloneable<PunkLordMonsterInfoScNotify>, IBufferMessage
	{
		// Token: 0x17002BE7 RID: 11239
		// (get) Token: 0x06009B39 RID: 39737 RVA: 0x0019F01C File Offset: 0x0019D21C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<PunkLordMonsterInfoScNotify> Parser
		{
			get
			{
				return PunkLordMonsterInfoScNotify._parser;
			}
		}

		// Token: 0x17002BE8 RID: 11240
		// (get) Token: 0x06009B3A RID: 39738 RVA: 0x0019F023 File Offset: 0x0019D223
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return PunkLordMonsterInfoScNotifyReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17002BE9 RID: 11241
		// (get) Token: 0x06009B3B RID: 39739 RVA: 0x0019F035 File Offset: 0x0019D235
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return PunkLordMonsterInfoScNotify.Descriptor;
			}
		}

		// Token: 0x06009B3C RID: 39740 RVA: 0x0019F03C File Offset: 0x0019D23C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PunkLordMonsterInfoScNotify()
		{
		}

		// Token: 0x06009B3D RID: 39741 RVA: 0x0019F050 File Offset: 0x0019D250
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PunkLordMonsterInfoScNotify(PunkLordMonsterInfoScNotify other) : this()
		{
			this.reason_ = other.reason_;
			this.aGBKKKNDOGO_ = ((other.aGBKKKNDOGO_ != null) ? other.aGBKKKNDOGO_.Clone() : null);
			this.dAAOBJPPKND_ = other.dAAOBJPPKND_.Clone();
			this.basicInfo_ = ((other.basicInfo_ != null) ? other.basicInfo_.Clone() : null);
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x06009B3E RID: 39742 RVA: 0x0019F0C9 File Offset: 0x0019D2C9
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PunkLordMonsterInfoScNotify Clone()
		{
			return new PunkLordMonsterInfoScNotify(this);
		}

		// Token: 0x17002BEA RID: 11242
		// (get) Token: 0x06009B3F RID: 39743 RVA: 0x0019F0D1 File Offset: 0x0019D2D1
		// (set) Token: 0x06009B40 RID: 39744 RVA: 0x0019F0D9 File Offset: 0x0019D2D9
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PunkLordMonsterInfoNotifyReason Reason
		{
			get
			{
				return this.reason_;
			}
			set
			{
				this.reason_ = value;
			}
		}

		// Token: 0x17002BEB RID: 11243
		// (get) Token: 0x06009B41 RID: 39745 RVA: 0x0019F0E2 File Offset: 0x0019D2E2
		// (set) Token: 0x06009B42 RID: 39746 RVA: 0x0019F0EA File Offset: 0x0019D2EA
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PunkLordBattleRecord AGBKKKNDOGO
		{
			get
			{
				return this.aGBKKKNDOGO_;
			}
			set
			{
				this.aGBKKKNDOGO_ = value;
			}
		}

		// Token: 0x17002BEC RID: 11244
		// (get) Token: 0x06009B43 RID: 39747 RVA: 0x0019F0F3 File Offset: 0x0019D2F3
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<uint> DAAOBJPPKND
		{
			get
			{
				return this.dAAOBJPPKND_;
			}
		}

		// Token: 0x17002BED RID: 11245
		// (get) Token: 0x06009B44 RID: 39748 RVA: 0x0019F0FB File Offset: 0x0019D2FB
		// (set) Token: 0x06009B45 RID: 39749 RVA: 0x0019F103 File Offset: 0x0019D303
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PunkLordMonsterBasicInfo BasicInfo
		{
			get
			{
				return this.basicInfo_;
			}
			set
			{
				this.basicInfo_ = value;
			}
		}

		// Token: 0x06009B46 RID: 39750 RVA: 0x0019F10C File Offset: 0x0019D30C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as PunkLordMonsterInfoScNotify);
		}

		// Token: 0x06009B47 RID: 39751 RVA: 0x0019F11C File Offset: 0x0019D31C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(PunkLordMonsterInfoScNotify other)
		{
			return other != null && (other == this || (this.Reason == other.Reason && object.Equals(this.AGBKKKNDOGO, other.AGBKKKNDOGO) && this.dAAOBJPPKND_.Equals(other.dAAOBJPPKND_) && object.Equals(this.BasicInfo, other.BasicInfo) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x06009B48 RID: 39752 RVA: 0x0019F194 File Offset: 0x0019D394
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.Reason != PunkLordMonsterInfoNotifyReason.None)
			{
				num ^= this.Reason.GetHashCode();
			}
			if (this.aGBKKKNDOGO_ != null)
			{
				num ^= this.AGBKKKNDOGO.GetHashCode();
			}
			num ^= this.dAAOBJPPKND_.GetHashCode();
			if (this.basicInfo_ != null)
			{
				num ^= this.BasicInfo.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x06009B49 RID: 39753 RVA: 0x0019F213 File Offset: 0x0019D413
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x06009B4A RID: 39754 RVA: 0x0019F21B File Offset: 0x0019D41B
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x06009B4B RID: 39755 RVA: 0x0019F224 File Offset: 0x0019D424
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			this.dAAOBJPPKND_.WriteTo(ref output, PunkLordMonsterInfoScNotify._repeated_dAAOBJPPKND_codec);
			if (this.aGBKKKNDOGO_ != null)
			{
				output.WriteRawTag(50);
				output.WriteMessage(this.AGBKKKNDOGO);
			}
			if (this.basicInfo_ != null)
			{
				output.WriteRawTag(90);
				output.WriteMessage(this.BasicInfo);
			}
			if (this.Reason != PunkLordMonsterInfoNotifyReason.None)
			{
				output.WriteRawTag(104);
				output.WriteEnum((int)this.Reason);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x06009B4C RID: 39756 RVA: 0x0019F2AC File Offset: 0x0019D4AC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.Reason != PunkLordMonsterInfoNotifyReason.None)
			{
				num += 1 + CodedOutputStream.ComputeEnumSize((int)this.Reason);
			}
			if (this.aGBKKKNDOGO_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.AGBKKKNDOGO);
			}
			num += this.dAAOBJPPKND_.CalculateSize(PunkLordMonsterInfoScNotify._repeated_dAAOBJPPKND_codec);
			if (this.basicInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.BasicInfo);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x06009B4D RID: 39757 RVA: 0x0019F330 File Offset: 0x0019D530
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(PunkLordMonsterInfoScNotify other)
		{
			if (other == null)
			{
				return;
			}
			if (other.Reason != PunkLordMonsterInfoNotifyReason.None)
			{
				this.Reason = other.Reason;
			}
			if (other.aGBKKKNDOGO_ != null)
			{
				if (this.aGBKKKNDOGO_ == null)
				{
					this.AGBKKKNDOGO = new PunkLordBattleRecord();
				}
				this.AGBKKKNDOGO.MergeFrom(other.AGBKKKNDOGO);
			}
			this.dAAOBJPPKND_.Add(other.dAAOBJPPKND_);
			if (other.basicInfo_ != null)
			{
				if (this.basicInfo_ == null)
				{
					this.BasicInfo = new PunkLordMonsterBasicInfo();
				}
				this.BasicInfo.MergeFrom(other.BasicInfo);
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x06009B4E RID: 39758 RVA: 0x0019F3D5 File Offset: 0x0019D5D5
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x06009B4F RID: 39759 RVA: 0x0019F3E0 File Offset: 0x0019D5E0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 34U)
				{
					if (num == 32U || num == 34U)
					{
						this.dAAOBJPPKND_.AddEntriesFrom(ref input, PunkLordMonsterInfoScNotify._repeated_dAAOBJPPKND_codec);
						continue;
					}
				}
				else
				{
					if (num == 50U)
					{
						if (this.aGBKKKNDOGO_ == null)
						{
							this.AGBKKKNDOGO = new PunkLordBattleRecord();
						}
						input.ReadMessage(this.AGBKKKNDOGO);
						continue;
					}
					if (num == 90U)
					{
						if (this.basicInfo_ == null)
						{
							this.BasicInfo = new PunkLordMonsterBasicInfo();
						}
						input.ReadMessage(this.BasicInfo);
						continue;
					}
					if (num == 104U)
					{
						this.Reason = (PunkLordMonsterInfoNotifyReason)input.ReadEnum();
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x04003BD8 RID: 15320
		private static readonly MessageParser<PunkLordMonsterInfoScNotify> _parser = new MessageParser<PunkLordMonsterInfoScNotify>(() => new PunkLordMonsterInfoScNotify());

		// Token: 0x04003BD9 RID: 15321
		private UnknownFieldSet _unknownFields;

		// Token: 0x04003BDA RID: 15322
		public const int ReasonFieldNumber = 13;

		// Token: 0x04003BDB RID: 15323
		private PunkLordMonsterInfoNotifyReason reason_;

		// Token: 0x04003BDC RID: 15324
		public const int AGBKKKNDOGOFieldNumber = 6;

		// Token: 0x04003BDD RID: 15325
		private PunkLordBattleRecord aGBKKKNDOGO_;

		// Token: 0x04003BDE RID: 15326
		public const int DAAOBJPPKNDFieldNumber = 4;

		// Token: 0x04003BDF RID: 15327
		private static readonly FieldCodec<uint> _repeated_dAAOBJPPKND_codec = FieldCodec.ForUInt32(34U);

		// Token: 0x04003BE0 RID: 15328
		private readonly RepeatedField<uint> dAAOBJPPKND_ = new RepeatedField<uint>();

		// Token: 0x04003BE1 RID: 15329
		public const int BasicInfoFieldNumber = 11;

		// Token: 0x04003BE2 RID: 15330
		private PunkLordMonsterBasicInfo basicInfo_;
	}
}
